<TagAttribute("weapon_hud_interface","wphi","????","????",2,380)>
Public Class WEAPON_HUD_INTERFACE_TAG
Inherits HaloTag
Public Const Extension as String = "weapon_hud_interface"
Public Const FourCC as String = "wphi"
Public Const ParentFourCC as String = "????"
Public Const GrandParentFourCC as String = "????"
Public Const [Version] as Short = 2
Public Const HeaderLength as Integer = 380

''' <summary>
''' 
''' </summary>
<TagField("child hud", 16, 10)>
Public child_hud as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
#Region "Flash cutoffs"

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 19)>
Public flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("total ammo cutoff", 1, 23)>
Public total_ammo_cutoff as Short

''' <summary>
''' 
''' </summary>
<TagField("loaded ammo cutoff", 1, 23)>
Public loaded_ammo_cutoff as Short

''' <summary>
''' 
''' </summary>
<TagField("heat cutoff", 1, 23)>
Public heat_cutoff as Short

''' <summary>
''' 
''' </summary>
<TagField("age cutoff", 1, 23)>
Public age_cutoff as Short

''' <summary>
''' 
''' </summary>
<TagField("", 32, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
#End Region
#Region "Weapon hud screen alignment"

''' <summary>
''' 
''' </summary>
<TagField("anchor", 1, 17)>
Public anchor as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 32, -1)>
Public padding_3 as Byte()

''' <summary>
''' weapon_hud_static_block
''' </summary>
<TagField("static elements", 180, 11)>
Public static_elements as List(Of STATIC_ELEMENTS_BLOCK)

''' <summary>
''' weapon_hud_meter_block
''' </summary>
<TagField("meter elements", 180, 11)>
Public meter_elements as List(Of METER_ELEMENTS_BLOCK)

''' <summary>
''' weapon_hud_number_block
''' </summary>
<TagField("number elements", 160, 11)>
Public number_elements as List(Of NUMBER_ELEMENTS_BLOCK)

''' <summary>
''' Crosshairs always 
''' </summary>
#End Region
#Region "Crosshairs"

''' <summary>
''' weapon_hud_crosshair_block
''' </summary>
<TagField("crosshairs", 104, 11)>
Public crosshairs as List(Of CROSSHAIRS_BLOCK)

''' <summary>
''' weapon_hud_overlays_block
''' </summary>
<TagField("overlay elements", 104, 11)>
Public overlay_elements as List(Of OVERLAY_ELEMENTS_BLOCK)

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 12, -1)>
Public padding_5 as Byte()

''' <summary>
''' global_hud_screen_effect_definition
''' </summary>
<TagField("screen effect", 184, 11)>
Public screen_effect as List(Of SCREEN_EFFECT_BLOCK)

''' <summary>
''' 
''' </summary>
<TagField("", 132, -1)>
Public padding_6 as Byte()

''' <summary>
''' 
''' </summary>
#End Region
#Region "Messaging information"

''' <summary>
''' sequence index into the global hud icon bitmap
''' </summary>
<TagField("sequence index", 1, 23)>
Public sequence_index as Short

''' <summary>
''' extra spacing beyond bitmap width for text alignment
''' </summary>
<TagField("width offset", 1, 23)>
Public width_offset as Short

''' <summary>
''' 
''' </summary>
<TagField("offset from reference corner", 2, 24)>
Public offset_from_reference_corner as Short()

''' <summary>
''' 
''' </summary>
<TagField("override icon color", 1, 4)>
Public override_icon_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("frame rate [0,30]", 1, 9)>
Public frame_rate as Byte

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 18)>
Public flags_1 as Byte

''' <summary>
''' 
''' </summary>
<TagField("text index", 1, 23)>
Public text_index as Short

''' <summary>
''' 
''' </summary>
<TagField("", 48, -1)>
Public padding_7 as Byte()
#End Region
Public Class STATIC_ELEMENTS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("state attached to", 1, 17)>
Public state_attached_to as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("can use on map type", 1, 17)>
Public can_use_on_map_type as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 28, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("anchor offset", 2, 24)>
Public anchor_offset as Short()

''' <summary>
''' 
''' </summary>
<TagField("width scale", 1, 0)>
Public width_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("height scale", 1, 0)>
Public height_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("scaling flags", 1, 19)>
Public scaling_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_3 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 20, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("interface bitmap", 16, 10)>
Public interface_bitmap as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("default color", 1, 4)>
Public default_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flashing color", 1, 4)>
Public flashing_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flash period", 1, 0)>
Public flash_period as Single

''' <summary>
''' 
''' </summary>
<TagField("flash delay", 1, 0)>
Public flash_delay as Single

''' <summary>
''' 
''' </summary>
<TagField("number of flashes", 1, 23)>
Public number_of_flashes as Short

''' <summary>
''' 
''' </summary>
<TagField("flash flags", 1, 19)>
Public flash_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("flash length", 1, 0)>
Public flash_length as Single

''' <summary>
''' 
''' </summary>
<TagField("disabled color", 1, 4)>
Public disabled_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding_5 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("sequence index", 1, 23)>
Public sequence_index as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_6 as Byte()

''' <summary>
''' global_hud_multitexture_overlay_definition
''' </summary>
<TagField("multitex overlay", 480, 11)>
Public multitex_overlay as List(Of MULTITEX_OVERLAY_BLOCK)

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding_7 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 40, -1)>
Public padding_8 as Byte()
Public Class MULTITEX_OVERLAY_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("type", 1, 23)>
Public type as Short

''' <summary>
''' 
''' </summary>
<TagField("framebuffer blend func", 1, 17)>
Public framebuffer_blend_func as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 32, -1)>
Public padding_2 as Byte()

''' <summary>
''' where you want the origin of the texture.
''' *"texture" uses the texture coordinates supplied
''' *"screen" uses the origin of the screen as the origin of the texture
''' </summary>
#Region "anchors"

''' <summary>
''' 
''' </summary>
<TagField("primary anchor", 1, 17)>
Public primary_anchor as Short

''' <summary>
''' 
''' </summary>
<TagField("secondary anchor", 1, 17)>
Public secondary_anchor as Short

''' <summary>
''' 
''' </summary>
<TagField("tertiary anchor", 1, 17)>
Public tertiary_anchor as Short

''' <summary>
''' how to blend the textures together
''' </summary>
#End Region
#Region "blending function"

''' <summary>
''' 
''' </summary>
<TagField("0 to 1 blend func", 1, 17)>
Public _0_to_1_blend_func as Short

''' <summary>
''' 
''' </summary>
<TagField("1 to 2 blend func", 1, 17)>
Public _1_to_2_blend_func as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_3 as Byte()

''' <summary>
''' how much to scale the textures
''' </summary>
#End Region
#Region "map scales"

''' <summary>
''' 
''' </summary>
<TagField("primary scale", 2, 1)>
Public primary_scale as Single()

''' <summary>
''' 
''' </summary>
<TagField("secondary scale", 2, 1)>
Public secondary_scale as Single()

''' <summary>
''' 
''' </summary>
<TagField("tertiary scale", 2, 1)>
Public tertiary_scale as Single()

''' <summary>
''' how much to offset the origin of the texture
''' </summary>
#End Region
#Region "map offsets"

''' <summary>
''' 
''' </summary>
<TagField("primary offset", 2, 1)>
Public primary_offset as Single()

''' <summary>
''' 
''' </summary>
<TagField("secondary offset", 2, 1)>
Public secondary_offset as Single()

''' <summary>
''' 
''' </summary>
<TagField("tertiary offset", 2, 1)>
Public tertiary_offset as Single()

''' <summary>
''' which maps to use
''' </summary>
#End Region
#Region "map"

''' <summary>
''' 
''' </summary>
<TagField("primary", 16, 10)>
Public primary as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("secondary", 16, 10)>
Public secondary as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("tertiary", 16, 10)>
Public tertiary as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("primary wrap mode", 1, 17)>
Public primary_wrap_mode as Short

''' <summary>
''' 
''' </summary>
<TagField("secondary wrap mode", 1, 17)>
Public secondary_wrap_mode as Short

''' <summary>
''' 
''' </summary>
<TagField("tertiary wrap mode", 1, 17)>
Public tertiary_wrap_mode as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 184, -1)>
Public padding_5 as Byte()

''' <summary>
''' global_hud_multitexture_overlay_effector_definition
''' </summary>
<TagField("effectors", 220, 11)>
Public effectors as List(Of EFFECTORS_BLOCK)

''' <summary>
''' 
''' </summary>
<TagField("", 128, -1)>
Public padding_6 as Byte()
#End Region
Public Class EFFECTORS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("", 64, -1)>
Public padding as Byte()

''' <summary>
''' The
''' </summary>
#Region "source/destination"

''' <summary>
''' 
''' </summary>
<TagField("destination type", 1, 17)>
Public destination_type as Short

''' <summary>
''' 
''' </summary>
<TagField("destination", 1, 17)>
Public destination as Short

''' <summary>
''' 
''' </summary>
<TagField("source", 1, 17)>
Public source as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' When the source is at the lower inbound, the destination ends up the lower outbound and vice-versa applies for the upper values.
''' </summary>
#End Region
#Region "in/out bounds"

''' <summary>
''' 
''' </summary>
<TagField("in bounds:source units", 2, 1)>
Public in_bounds as Single()

''' <summary>
''' 
''' </summary>
<TagField("out bounds:pixels", 2, 1)>
Public out_bounds as Single()

''' <summary>
''' 
''' </summary>
<TagField("", 64, -1)>
Public padding_2 as Byte()

''' <summary>
''' If destination is tint, these values are used instead of the out bounds.
''' </summary>
#End Region
#Region "tint color bounds"

''' <summary>
''' 
''' </summary>
<TagField("tint color lower bound", 3, 2)>
Public tint_color_lower_bound as Single()

''' <summary>
''' 
''' </summary>
<TagField("tint color upper bound", 3, 2)>
Public tint_color_upper_bound as Single()

''' <summary>
''' If you use a periodic function as the source, this lets you tweak it.
''' </summary>
#End Region
#Region "periodic functions"

''' <summary>
''' 
''' </summary>
<TagField("periodic function", 1, 17)>
Public periodic_function as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_3 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("function period:seconds", 1, 0)>
Public function_period as Single

''' <summary>
''' 
''' </summary>
<TagField("function phase:seconds", 1, 0)>
Public function_phase as Single

''' <summary>
''' 
''' </summary>
<TagField("", 32, -1)>
Public padding_4 as Byte()
#End Region

End Class

End Class

End Class
Public Class METER_ELEMENTS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("state attached to", 1, 17)>
Public state_attached_to as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("can use on map type", 1, 17)>
Public can_use_on_map_type as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 28, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("anchor offset", 2, 24)>
Public anchor_offset as Short()

''' <summary>
''' 
''' </summary>
<TagField("width scale", 1, 0)>
Public width_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("height scale", 1, 0)>
Public height_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("scaling flags", 1, 19)>
Public scaling_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_3 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 20, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("meter bitmap", 16, 10)>
Public meter_bitmap as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("color at meter minimum", 1, 4)>
Public color_at_meter_minimum as Integer

''' <summary>
''' 
''' </summary>
<TagField("color at meter maximum", 1, 4)>
Public color_at_meter_maximum as Integer

''' <summary>
''' 
''' </summary>
<TagField("flash color", 1, 4)>
Public flash_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("empty color", 1, 4)>
Public empty_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 18)>
Public flags as Byte

''' <summary>
''' 
''' </summary>
<TagField("minumum meter value", 1, 9)>
Public minumum_meter_value as Byte

''' <summary>
''' 
''' </summary>
<TagField("sequence index", 1, 23)>
Public sequence_index as Short

''' <summary>
''' 
''' </summary>
<TagField("alpha multiplier", 1, 9)>
Public alpha_multiplier as Byte

''' <summary>
''' 
''' </summary>
<TagField("alpha bias", 1, 9)>
Public alpha_bias as Byte

''' <summary>
''' used for non-integral values, i.e. health and shields
''' </summary>
<TagField("value scale", 1, 23)>
Public value_scale as Short

''' <summary>
''' 
''' </summary>
<TagField("opacity", 1, 0)>
Public opacity as Single

''' <summary>
''' 
''' </summary>
<TagField("translucency", 1, 0)>
Public translucency as Single

''' <summary>
''' 
''' </summary>
<TagField("disabled color", 1, 4)>
Public disabled_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 16, -1)>
Public padding_5 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 40, -1)>
Public padding_6 as Byte()

End Class
Public Class NUMBER_ELEMENTS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("state attached to", 1, 17)>
Public state_attached_to as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("can use on map type", 1, 17)>
Public can_use_on_map_type as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 28, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("anchor offset", 2, 24)>
Public anchor_offset as Short()

''' <summary>
''' 
''' </summary>
<TagField("width scale", 1, 0)>
Public width_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("height scale", 1, 0)>
Public height_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("scaling flags", 1, 19)>
Public scaling_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_3 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 20, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("default color", 1, 4)>
Public default_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flashing color", 1, 4)>
Public flashing_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flash period", 1, 0)>
Public flash_period as Single

''' <summary>
''' 
''' </summary>
<TagField("flash delay", 1, 0)>
Public flash_delay as Single

''' <summary>
''' 
''' </summary>
<TagField("number of flashes", 1, 23)>
Public number_of_flashes as Short

''' <summary>
''' 
''' </summary>
<TagField("flash flags", 1, 19)>
Public flash_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("flash length", 1, 0)>
Public flash_length as Single

''' <summary>
''' 
''' </summary>
<TagField("disabled color", 1, 4)>
Public disabled_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding_5 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("maximum number of digits", 1, 9)>
Public maximum_number_of_digits as Byte

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 18)>
Public flags as Byte

''' <summary>
''' 
''' </summary>
<TagField("number of fractional digits", 1, 9)>
Public number_of_fractional_digits as Byte

''' <summary>
''' 
''' </summary>
<TagField("", 1, -1)>
Public padding_6 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 12, -1)>
Public padding_7 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("weapon specific flags", 1, 19)>
Public weapon_specific_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_8 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 36, -1)>
Public padding_9 as Byte()

End Class
Public Class CROSSHAIRS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("crosshair type", 1, 17)>
Public crosshair_type as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("can use on map type", 1, 17)>
Public can_use_on_map_type as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 28, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("Crosshair bitmap", 16, 10)>
Public crosshair_bitmap as New TAG_REFERENCE

''' <summary>
''' weapon_hud_crosshair_item_block
''' </summary>
<TagField("Crosshair overlays", 108, 11)>
Public crosshair_overlays as List(Of CROSSHAIR_OVERLAYS_BLOCK)

''' <summary>
''' 
''' </summary>
<TagField("", 40, -1)>
Public padding_3 as Byte()
Public Class CROSSHAIR_OVERLAYS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("anchor offset", 2, 24)>
Public anchor_offset as Short()

''' <summary>
''' 
''' </summary>
<TagField("width scale", 1, 0)>
Public width_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("height scale", 1, 0)>
Public height_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("scaling flags", 1, 19)>
Public scaling_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 20, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("default color", 1, 4)>
Public default_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flashing color", 1, 4)>
Public flashing_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flash period", 1, 0)>
Public flash_period as Single

''' <summary>
''' 
''' </summary>
<TagField("flash delay", 1, 0)>
Public flash_delay as Single

''' <summary>
''' 
''' </summary>
<TagField("number of flashes", 1, 23)>
Public number_of_flashes as Short

''' <summary>
''' 
''' </summary>
<TagField("flash flags", 1, 19)>
Public flash_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("flash length", 1, 0)>
Public flash_length as Single

''' <summary>
''' 
''' </summary>
<TagField("disabled color", 1, 4)>
Public disabled_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("frame rate", 1, 23)>
Public frame_rate as Short

''' <summary>
''' 
''' </summary>
<TagField("sequence index", 1, 23)>
Public sequence_index as Short

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 20)>
Public flags as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 32, -1)>
Public padding_3 as Byte()

End Class

End Class
Public Class OVERLAY_ELEMENTS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("state attached to", 1, 17)>
Public state_attached_to as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("can use on map type", 1, 17)>
Public can_use_on_map_type as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 28, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("Overlay bitmap", 16, 10)>
Public overlay_bitmap as New TAG_REFERENCE

''' <summary>
''' weapon_hud_overlay_block
''' </summary>
<TagField("Overlays", 136, 11)>
Public overlays as List(Of OVERLAYS_BLOCK)

''' <summary>
''' 
''' </summary>
<TagField("", 40, -1)>
Public padding_3 as Byte()
Public Class OVERLAYS_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("anchor offset", 2, 24)>
Public anchor_offset as Short()

''' <summary>
''' 
''' </summary>
<TagField("width scale", 1, 0)>
Public width_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("height scale", 1, 0)>
Public height_scale as Single

''' <summary>
''' 
''' </summary>
<TagField("scaling flags", 1, 19)>
Public scaling_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 20, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("default color", 1, 4)>
Public default_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flashing color", 1, 4)>
Public flashing_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("flash period", 1, 0)>
Public flash_period as Single

''' <summary>
''' 
''' </summary>
<TagField("flash delay", 1, 0)>
Public flash_delay as Single

''' <summary>
''' 
''' </summary>
<TagField("number of flashes", 1, 23)>
Public number_of_flashes as Short

''' <summary>
''' 
''' </summary>
<TagField("flash flags", 1, 19)>
Public flash_flags as Short

''' <summary>
''' 
''' </summary>
<TagField("flash length", 1, 0)>
Public flash_length as Single

''' <summary>
''' 
''' </summary>
<TagField("disabled color", 1, 4)>
Public disabled_color as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("frame rate", 1, 23)>
Public frame_rate as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_3 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("sequence index", 1, 23)>
Public sequence_index as Short

''' <summary>
''' 
''' </summary>
<TagField("type", 1, 19)>
Public type as Short

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 20)>
Public flags as Integer

''' <summary>
''' 
''' </summary>
<TagField("", 16, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 40, -1)>
Public padding_5 as Byte()

End Class

End Class
Public Class SCREEN_EFFECT_BLOCK

''' <summary>
''' 
''' </summary>
<TagField("", 4, -1)>
Public padding as Byte()

''' <summary>
''' Mask bitmap overlay. Use either a 2D bitmap or an interface bitmap.
''' </summary>
#Region "mask"

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 19)>
Public flags as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_1 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("", 16, -1)>
Public padding_2 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("mask (fullscreen)", 16, 10)>
Public mask_1 as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("mask (splitscreen)", 16, 10)>
Public mask_2 as New TAG_REFERENCE

''' <summary>
''' 
''' </summary>
<TagField("", 8, -1)>
Public padding_3 as Byte()

''' <summary>
''' Warp effect like in 'Pitch-Black', sort of.
''' </summary>
#End Region
#Region "convolution"

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 19)>
Public flags_1 as Short

''' <summary>
''' 
''' </summary>
<TagField("", 2, -1)>
Public padding_4 as Byte()

''' <summary>
''' 
''' </summary>
<TagField("FOV in bounds:degrees", 2, 1)>
Public FOV_in_bounds as Single()

''' <summary>
''' 
''' </summary>
<TagField("radius out bounds:pixels", 2, 1)>
Public radius_out_bounds as Single()

''' <summary>
''' 
''' </summary>
<TagField("", 24, -1)>
Public padding_5 as Byte()

''' <summary>
''' Real-time gamma correction to make dark objects appear brighter.
''' </summary>
#End Region
#Region "night-vision"

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 19)>
Public flags_2 as Short

''' <summary>
''' 
''' </summary>
<TagField("script source:[0,3]", 1, 23)>
Public script_source as Short

''' <summary>
''' 
''' </summary>
<TagField("intensity:[0,1]", 1, 0)>
Public intensity as Single

''' <summary>
''' 
''' </summary>
<TagField("", 24, -1)>
Public padding_6 as Byte()

''' <summary>
''' Real-time monochromatic color filter.
''' </summary>
#End Region
#Region "desaturation"

''' <summary>
''' 
''' </summary>
<TagField("flags", 1, 19)>
Public flags_3 as Short

''' <summary>
''' 
''' </summary>
<TagField("script source:[0,3]", 1, 23)>
Public script_source_1 as Short

''' <summary>
''' 
''' </summary>
<TagField("intensity:[0,1]", 1, 0)>
Public intensity_1 as Single

''' <summary>
''' 
''' </summary>
<TagField("tint", 3, 2)>
Public tint as Single()

''' <summary>
''' 
''' </summary>
<TagField("", 24, -1)>
Public padding_7 as Byte()
#End Region

End Class

End Class
